GDK W32: support font scaling
authorРуслан Ижбулатов <lrn1986@gmail.com>
Thu, 31 Jul 2014 14:01:56 +0000 (14:01 +0000)
committerРуслан Ижбулатов <lrn1986@gmail.com>
Thu, 31 Jul 2014 14:01:56 +0000 (14:01 +0000)
Respect system font scaling (Control Panel -> Display -> Font Size) and
convey that information to GDK (which then passes it to Pango).

https://bugzilla.gnome.org/show_bug.cgi?id=734038

gdk/win32/gdkscreen-win32.c

index 8cab47117dca71217e6cba78f7e27822c3f13a96..f86d7ce0ab3456e0d0e131ba95bdb792b257b809 100644 (file)
@@ -36,6 +36,20 @@ G_DEFINE_TYPE (GdkWin32Screen, gdk_win32_screen, GDK_TYPE_SCREEN)
 static void
 gdk_win32_screen_init (GdkWin32Screen *display)
 {
+  GdkScreen *screen = GDK_SCREEN (display);
+  HDC screen_dc;
+  int logpixelsx = -1;
+
+  screen_dc = GetDC (NULL);
+
+  if (screen_dc)
+    {
+      logpixelsx = GetDeviceCaps(screen_dc, LOGPIXELSX);
+      ReleaseDC (NULL, screen_dc);
+    }
+
+  if (logpixelsx > 0)
+    _gdk_screen_set_resolution (screen, logpixelsx);
 }
 
 static GdkDisplay *